netscan
Cross-platform network scan library
with the aim of being lightweight and fast.
Features
- Port Scan (IPv4, IPv6)
- TCP SYN scan
- TCP CONNECT scan
- Host Scan (IPv4, IPv6)
- ICMP PING scan
- TCP PING scan
- UDP PING scan
Usage
Add netscan
to your dependencies
[]
= "0.23"
Example
See Examples
Feature flags
The following feature flags can be used to enable/disable specific features.
--feature service
Enable service detection.
--feature os
Enable TCP/IP Stack Fingerprinting.
--feature full
Enable all of the above.
For more details see Examples
Supported platform
- Linux
- macOS
- Windows
Note for Windows users
To build on Windows, follow the instructions below.
Windows
- You must use a version of Rust which uses the MSVC toolchain
- You must have npcap or WinPcap installed (If using npcap, make sure to install with the "Install Npcap in WinPcap API-compatible Mode")
- You must place
Packet.lib
from the Npcap SDK or WinPcap Developers pack in a directory namedlib
, in the root of this repository. Alternatively, you can use any of the locations listed in the%LIB%
/$Env:LIB
environment variables. For the 64 bit toolchain it is in<SDK>/Lib/x64/Packet.lib
, for the 32 bit toolchain, it is in<SDK>/Lib/Packet.lib
.
Additional Notes
This library requires the ability to create raw sockets. Execute with administrator privileges.